package com.lagou.task08;
//定义一个长度为[16][16]的整型二维数组并输入或指定所有位置的元素值，分别实现二维数组中所有行和所有列中所有元素的累加和并打印。
//再分别实现二维数组中左上角到右下角和右上角到左下角所有元素的累加和并打印。
import java.util.Arrays;

public class CountNumber {

    public static void main(String[] args){
        //定义一个长度均为16的二维数组
        int[][] arr = new int[16][16];
        //定义一个变量用来赋值
        int num = 100;
        //定义一个变量用来算当前行的和
        int total;
        //定义一个变量用来算当列的和
        int[] count = new int[16];
        //定义一个变量用来计算左上角到右下角的和
        int leftcount = 0;
        //定义一个变量用来计算右上角到左下角的和
        int rightcount = 0;

        for(int i = 0; i < 16; i++){
            total = 0;
            for(int j = 0; j < 16; j++){
                num++;
                arr[i][j] = num;
                System.out.print(arr[i][j] + " ");
                //计算每一行当前的和
                total = arr[i][j] + total;
                //计算到这一行每列的和
                count[j] = count[j] + arr[i][j];
                //计算左上角到右下角的和
                if(i == j){
                    leftcount = arr[i][j] + leftcount;
                }
                //计算右上角到左下角的和
                if(i + j == 15){
                    rightcount = arr[i][j] + rightcount;
                }
            }

            System.out.print("这一行的总和为：" + total);
            System.out.println();
        }
        System.out.println("每一列的和为：" + Arrays.toString(count));
        System.out.println("左上角到右下角的和为：" + leftcount);
        System.out.println("右上角到左下角的和为：" + rightcount);
    }
}
